package com.southminority.ethnic.controller.admin.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;

/**
 * 课程更新请求VO
 * 
 * @author SouthMinority
 */
@Data
@Schema(description = "课程更新请求")
public class CourseUpdateReqVo {

    @Schema(description = "课程ID", required = true, example = "1")
    @NotNull(message = "课程ID不能为空")
    private Long id;

    @Schema(description = "课程名称", required = true, example = "苗语东部方言发音指南")
    @NotBlank(message = "课程名称不能为空")
    private String courseName;

    @Schema(description = "课程简介", example = "学习苗语东部方言的基本发音规则")
    private String courseIntro;

    @Schema(description = "讲师ID", required = true, example = "1")
    @NotNull(message = "讲师ID不能为空")
    private Long teacherId;

    @Schema(description = "课程封面图片URL", example = "https://example.com/cover1.jpg")
    private String coverImage;

    @Schema(description = "视频时长（秒）", example = "3600")
    private Integer videoDuration;

    @Schema(description = "视频路径（OSS地址）", example = "https://example.com/video1.mp4")
    private String videoPath;

    @Schema(description = "课程类型(1-民族语学习，2-口头文学，3-民族文献解读，4-少数民族学习国家通用语)", example = "1")
    private Integer courseType;
} 